// 1. 定义路由组件.
// 也可以从其他文件导入
// 2. 定义一些路由
import Vue from 'vue'
import VueRouter from 'vue-router'

import Vuex from '../components/Vuex'
import Cart from '../components/Cart'
import NOTFOUND from '../components/NotFound'
import Layout from '@/components/Layout'
import Ubih from '@/components/Ubih'
import Wode from '@/components/Wode'
import BootStrap from '@/components/BootStrap'
Vue.use(VueRouter)
// 每个路由都需要映射到一个组件。
// 我们后面再讨论嵌套路由。
const routes = [
  {
    path: '/',
    component: Vuex,
    redirect: '/home'
  },
  {
    path: '/home',
    component: Vuex
  },
  {
    path: '/bootstrap',
    component: BootStrap
  },
  {
    path: '/cart',
    component: Cart,
    redirect: '/cart/layout',
    children: [
      {
        path: '/cart/layout', component: Layout
      },
      {
        path: '/cart/ubih', component: Ubih
      },
      {
        path: '/cart/wode/:word?', component: Wode, name: 'Wode'
      }
    ]
  },
  {
    path: '*', component: NOTFOUND
  }
]

// 3. 创建路由实例并传递 `routes` 配置
// 你可以在这里输入更多的配置，但我们在这里
// 暂时保持简单
const router = new VueRouter({
  // 4. 内部提供了 history 模式的实现。为了简单起见，我们在这里使用 hash 模式。
  mode: 'history',
  routes, // `routes: routes` 的缩写,
  linkActiveClass: 'active'
})

export default router
